package lucee.runtime.instrumentation;
import java.lang.instrument.Instrumentation;
public class ExternalAgent {
private static Instrumentation instrumentation;
public static void premain(String agentArgs, Instrumentation inst) {
setInstrumentation(inst);
}
public static void agentmain(String agentArgs, Instrumentation inst) {
setInstrumentation(inst);
}
private static void setInstrumentation(Instrumentation inst) {
if(inst!=null) {
try{
System.out.println("start set instrumentation");
System.out.println(Thread.currentThread().getContextClassLoader().getClass().getName());
System.out.println(ClassLoader.getSystemClassLoader().getClass().getName());
System.out.println(new ExternalAgent().getClass().getClassLoader().getClass().getName());
instrumentation=inst;
}
catch(Throwable t){
t.printStackTrace();
}
}
}
public static Instrumentation getInstrumentation() {
return instrumentation;
}
}